System and method for controlling a rendering device based upon detected user proximity

ABSTRACT

A method is disclosed for generating a media playlist by a media rendering device having a proximity detector. The proximity detector detects a first identification device, receives a first identification associated with the first identification device, and selects a first preference list associated with the first identification. The proximity detector detects a second identification device, receives a second identification associated with the second identification device, and selects a second preference list associated with the second identification. The media player generates a combined preference list based upon the first preference list and the second preference list and generates a playlist of songs based on the combined preference list.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims the benefit of U.S.patent application Ser. No. 14/853,025, filed Sep. 14, 2015, entitled“System and Method for Controlling a Rendering Device Based UponDetected User Proximity,” which is incorporated by reference herein inits entirety.

FIELD OF THE INVENTION

The present invention relates to media rendering, and more particularly,is related to controlling media rendering devices.

BACKGROUND OF THE INVENTION

It has become commonplace for an individual to have access to multipledevices that render media, such as an mp3 player, a car stereo, a homeentertainment system, a portable computer or tablet, a gaming console,and a smart phone, among others. Two or more of these rendering devicesmay have access to a communications network and/or the internet, and beconfigured to render digital media provided over the communicationsnetwork and/or the internet, for example, a digital media streamingservice.

Unfortunately, continuity of rendering of digital media may beinterrupted as a user transitions between devices, for example, bymoving from a first region with a first rendering device to a secondregion with a second rendering device. Another example includestransitioning from a personal media rendering device, such as a smartphone, to a transportation based rendering device, such as an automobilesound system. Therefore, there is a need in the industry to address oneor more of the abovementioned shortcomings.

SUMMARY OF THE INVENTION

Embodiments of the present invention provide a system and method forcontrolling a rendering device based upon a detected proximity of auser. Briefly described, a first aspect of the present invention isdirected to a method for generating a media playlist by a mediarendering device having a proximity detector. The proximity detectordetects a first identification device, receives a first identificationassociated with the first identification device, and selects a firstpreference list associated with the first identification. The proximitydetector detects a second identification device, receives a secondidentification associated with the second identification device, andselects a second preference list associated with the secondidentification. The media player generates a combined preference listbased upon the first preference list and the second preference list andgenerates a playlist of songs based on the combined preference list.

A second aspect of the present invention is directed a media renderingsystem including a first user identification device configured toprovide a first user identity identifying the first user identificationdevice and a second user identification device configured to provide asecond user identity identifying the second user identification device.A proximity detecting device is configured to detect and receive thefirst and second user identities from the first and second useridentification device when they are located within a proximity detectingregion of the proximity detecting device. A media rendering device isconfigured to receive the first user identity and the second useridentity from the proximity detecting device and access user preferencesassociated with the first and second user identities. The mediarendering device is configured to operate according to a first operatingmanner derived from the first user preference, the media renderingdevice is configured to operate according to a second operating mannerderived from the second user preference, and the media rendering deviceis configured to operate according to a third operating manner derivedfrom the first user preference and the second user preference.

Other systems, methods and features of the present invention will be orbecome apparent to one having ordinary skill in the art upon examiningthe following drawings and detailed description. It is intended that allsuch additional systems, methods, and features be included in thisdescription, be within the scope of the present invention and protectedby the accompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are included to provide a furtherunderstanding of the invention, and are incorporated in and constitute apart of this specification. The components in the drawings are notnecessarily to scale, emphasis instead being placed upon clearlyillustrating the principles of the present invention. The drawingsillustrate embodiments of the invention and, together with thedescription, serve to explain the principles of the invention.

FIG. 1A is a schematic diagram depicting a first embodiment of aproximity detecting rendering system.

FIG. 1B is a schematic diagram depicting the first embodiment of theproximity detecting rendering system detecting a user.

FIG. 1C is a schematic diagram depicting the first embodiment of theproximity detecting rendering system providing user identification to amedia rendering device.

FIG. 1D is a schematic diagram depicting the first embodiment of theproximity detecting rendering system in the context of a network.

FIG. 2A is a schematic diagram depicting the first embodiment of theproximity detecting rendering system providing user identification for afirst user to the media rendering device.

FIG. 2B is a schematic diagram depicting the first embodiment of theproximity detecting rendering system providing user identification for asecond user to the media rendering device.

FIG. 3A is a schematic diagram depicting a second embodiment of aproximity detecting rendering system deployed within a premises.

FIG. 3B is a schematic diagram depicting the second embodiment of theproximity detecting rendering system of FIG. 1A showing the user in adifferent region.

FIG. 4A is two charts showing a simplified list of preferences for afirst user and a second user.

FIG. 4B is a chart showing a combined list of preferences for the firstuser and the second user.

FIG. 4C is a chart showing a playlist generated using the combined listof preferences for the first user and the second user.

FIG. 5 is a schematic diagram illustrating an example of a system forexecuting functionality of the present invention.

FIG. 6 is a flowchart of an exemplary method for configuring a mediarendering system.

FIG. 7 is a flowchart continuing the exemplary method of FIG. 6.

FIG. 8 is a flowchart continuing the exemplary method of FIG. 7 forderiving a combined playlist for a media rendering.

FIG. 9 is a flowchart continuing the exemplary method of FIG. 6 forfurther configuring a media rendering system containing a secondproximity detector and second media rendering device.

DETAILED DESCRIPTION

The following definitions are useful for interpreting terms applied tofeatures of the embodiments disclosed herein, and are meant only todefine elements within the disclosure.

As used within this disclosure, “media” refers to audio and/or videocontent either stored on a storage medium, such as a disk drive ordigital disk, or streamed from a media server. Media may refer to analogand/or digitally formatted data.

As used within this disclosure, an originating provider of media, eitherstreamed or locally stored, is referred to as a “media source.” Examplesof a media source include a music and/or video server, an internetradio, a streaming service, or a cache of media files.

As used within this disclosure, “rendering” refers to playback of mediaby a media player, also referred to herein as a “rendering device.”Examples of rendering devices include, but are not limited to, an mp3player, a tablet computer, a portable stereo, a home entertainmentsystem, a portable video player, a smart phone, a laptop or desktopcomputer, and a mobile entertainment system.

As used within this disclosure, a “user” refers to a person consumingmedia from a rendering device.

As used within this disclosure, a “cue point” refers a playback timelocation in a rendered media.

As used within this disclosure, a “local device,” such as a server,refers to a network element directly connected to a local area network(LAN), while a remote device refers to an item that may be incommunication with local network elements, for example, via theinternet, but is not directly connected to the LAN.

As used within this disclosure, a “playlist” is a modifiable datastructure containing an ordered list of media, or an ordered list ofreferences to media. A playlist may be stored, for example, on arendering device or a server. A playlist may be modified to add, remove,and/or re-order media or media references. Since playlists containingmedia references do not contain audio or video content, they aregenerally small in size and therefore readily transportable. A displayplaylist is a text listing of media in a playlist, and may include asubset of identifying parameters of a media, such as title, artist,duration, and date, among others.

As used within this disclosure, “streaming” refers to a process ofreal-time transmitting media of a recording by a source to a renderingdevice. The rendering device may begin rendering the media before theentire recording has been transmitted. Streaming is generallytransitory, such that the streamed data is not retained after it hasbeen rendered. Portions of a received stream may be buffered forrendering, for example, to ensure rendering is uninterrupted duringshort interruptions of the streamed transmission. In contrast, adownloaded digital multimedia file is generally received in its entiretybefore it may be rendered. A downloaded digital multimedia file isgenerally retained in a memory for subsequent rendering, while astreamed file is generally re-streamed for subsequent renderings.“Streaming a song” is shorthand for streaming media of an audiorecording identified by a song.

As used within this reference, “preferences of a user” refers to a setof preferences associated with a user identification device. While it ispresumed herein that the user identification is associated with aspecific user, the system described herein will associate the set ofpreferences associated with a user identification device regardless ofwhether the user or another individual is detected, for example, whilecarrying the identification device. It should be noted that a singleidentification device may be used to identify more than one user, forexample, when a user switches an account on the identification device.

As used within this reference, “operating manner” refers to theoperation of a device according to a specified configuration of one ormore operating parameters and/or rendering of specified media. Suchparameters may include, an audio volume level, an audio equalizationcurve, a video brightness setting, a video color ratio, a number ofaudio channels, an audio speaker configuration, a video resolution, avideo aspect ratio, a delay setting, a channel down mix, a channelexpansion, a dynamic range ratio, and two or three dimensional videopresentation, among others.

As used within this reference, “proximity” refers to a distance, or adistance range between a detected object and a proximity detectingdevice. The distance range may be a function of orientation with respectto the proximity detecting device.

As used within this reference, “proximity detecting device” refers to adevice configured to detect an object within a specified detectionregion, possibly bounded by direction and distance with respect to theproximity detecting device. The proximity detecting device may onlydetect objects within a maximum distance at any particular direction.The maximum distance may vary based upon a directional orientation withrespect to the proximity detecting device, and may be limited based onphysical obstacles within the detection region. For example, aparticular proximity detecting device may be limited by line of sight.

Reference will now be made in detail to embodiments of the presentinvention, examples of which are illustrated in the accompanyingdrawings. Wherever possible, the same reference numbers are used in thedrawings and the description to refer to the same or like parts.

Generally, embodiments of the present invention include one or morerendering devices in communication with one another, and incommunication with one or more proximity detector(s). Each renderingdevice renders media provided by a media source, for example, storedwithin the rendering device or via a communication network. Eachrendering device plays media in a play queue, or from a media stream.One or more rendering device may be located within a premises such as adwelling or business, for example, in separate rooms. Each renderingdevice is in communication with one or more proximity detectors. Theproximity detector(s) may be co-located with the rendering device, ormay be separately located from the rendering device. The proximitydetector is configured to detect a user identification device, forexample, on the person of a user who is able to experience the renderingof media by the rendering device. Control of the one or more renderingdevices and/or the selection of media rendered by the one or more mediadevices may be determined based on a proximity of the useridentification device to the one or more media devices as detected bythe one or more proximity detectors.

FIG. 1A shows a first embodiment of a rendering system 100. The system100 includes a first rendering device 111 and a first proximity detector121 for example located within a room. The first rendering device 111and a first proximity detector 121 may be in communication, for example,via a direct hard wired communication channel, or via a wirelesscommunication channel, such as a Bluetooth, WiFi, or other radiofrequency (RF) channel, or audio, such as ultrasonic. The firstproximity detector 121 detects the presence of a first identificationdevice 145 within a detection region 125, and informs the firstrendering device 111 of the presence of the first identification device145. The first proximity detector 121 may also use other detectedinformation to determine the presence of the first identification device145, for example whether the identification device 145 is quicklypassing through the detection region 125, or the first identificationdevice 145 is dwelling in the detection region 125.

The first user 140 has the first identification device 145 on hisperson. For example, the first user 140 may carry the firstidentification device 145, such as an RFID tag, a Bluetooth Low Energy(BLE) tag, or a smart phone configured to communicate with the firstproximity detector 121, for example using BLE. The first user 140 may beholding the first identification device 145 in his hand, carrying thefirst identification device 145 in his pocket, or may be wearing thefirst identification device 145 on his clothing, for example, on hisbelt. An identification device 145 may be implanted in the person of auser. The first proximity detector 121 may detect the identificationdevice using a variety of techniques, including, but not limited tophoto feature recognition, facial recognition such as Xbox Kinect, amongothers, wireless communication, such as Bluetooth/BLE or ZigBee, tovoice-print analysis. The first identification device 145 is configuredto provide an identification 146 (FIG. 1B), for example, a data field ortag, to the first proximity detector 121 that may specifically identifythe first user 140 when the first identification device 145 is withinthe detection region 125 of the first proximity detector 121.Alternatively, or in addition, the first identification device 145 maybe configured to receive the identification 146 (FIG. 1B), from thefirst rendering device 111, for example via BLE. While FIG. 1A depictsthe detection region 125 as being directional with respect to the firstproximity detector 121, the detection region 125 may not be directional,for example omnidirectional, and a function only of distance of thefirst identification device 145 from the first proximity detector 121,or a combination of distance and direction of the first identificationdevice 145 with respect to the first proximity detector 121.

FIG. 1A depicts the first rendering device 111 and the first proximitydetector 121 as boxes drawn with solid lines, indicating that neitherthe first rendering device 111 nor the first proximity detector 121 isaware of the presence of the first user 140 or the first identificationdevice 145.

In FIG. 1B, the first user 140 has entered the detection region 125 ofthe first proximity detector 121. The first proximity detector 121detects the identification device 145. FIG. 1B depicts the firstrendering device 111 with a dash-dot line, indicating the firstidentification device 145 of the first user 140 has been detected by thefirst proximity detector 121.

The first proximity detector 121 may determine or access anidentification 148 (FIG. 1C) for the first identification device 145.For example, the identification 148 (FIG. 1C) may include anidentification code or tag, and/or a data file containing identificationfields. For example, the identification 148 (FIG. 1C) may be associatedwith a user account for an entertainment system. The user accountidentifier may be passed as the identification 148 (FIG. 1C). Suchparameters for that user such as service log-in credentials and historyand preferences may be stored in the cloud. Alternatively, theidentification 148 (FIG. 1C) may be nothing more than the uniqueidentification 146 provided directly to the first proximity detector 121during detection of the identification device 145.

The first proximity detector 121 provides the identification 148 (FIG.1C) to the first rendering device 111. FIG. 1C depicts the firstrendering device 111 with a dash-dot line, indicating the firstrendering device 111 is aware the first identification device 145 hasbeen detected by the first proximity detector 121. The first renderingdevice 111 may be configured to render media, for example, a storedplaylist, or a stream from a media source.

The first proximity detector 121 may be incorporated within the firstrendering device 111, or the first proximity detector 121 may beindependent from the first rendering device 1, and in communication withthe first rendering device via a network, for example, a wireless localarea network (LAN) 160 (FIG. 1D). The first rendering device 111 may beconfigured to respond to awareness of the proximity of the firstidentification device 145 in one or more ways, as described furtherbelow. Alternatively, the first rendering device 111, firstidentification device 145, and/or the first proximity detector 121 maybe in communication via a subnetwork within the LAN or via a proprietarycommunication scheme independent of the LAN.

In FIG. 1C, the first rendering device 111 has determined the identityof the first user 140 via the detected identification device 145, suchthat the first rendering device 111 may respond to the first user 140 ina manner specific to the first user 140. For example, a set of userpreferences associated with the first identification device 145 may bepre-configured into (i.e., stored within) the first rendering device111, or the first proximity detector 121 may communicate a set of userpreferences associated with the first identification device 145 to thefirst rendering device 111 as part of the identification 148, or alongwith the identification 146, 148. Alternatively, the first proximitydetector 121 and/or the first rendering device 111 may retrievepreference data associated with the identification 146, 148 via the LAN160 (FIG. 1D), for example, from a local or remote server 170 (FIG. 1D)storing the preference data associated with the particular firstidentification device 145, for example, within a database 171 (FIG. 1D).

In alternative embodiments the first identification device 145 may be incommunication with the LAN 160 (FIG. 1D), and the first identificationdevice 145 may store a user profile containing preferences regardingconfiguration parameters for rendering devices and/or media preferences.The user profile may contain user identification information and includeinformation regarding media preferences, a list of devices used by theuser, and/or a list of media streaming services subscribed to by theuser. The user profile may be stored on one or more devices 145, 121,111, and be communicated between the devices 145, 121, 111. For example,an application (or “app”) on a smartphone may be configured to collectand store user preferences as a user profile, where the smartphoneserves as the identification device 145. The first identification device145 may communicate the user profile to the first rendering device 111and/or the first proximity detector 121.

As noted previously, FIG. 1C depicts the first rendering device 111 witha dash-dot line, indicating the first rendering device 111 is aware thefirst identification device 145 has been detected by the first proximitydetector. The dash-dot line may also signify that the first renderingdevice 111 has received an identity profile associated with the firstidentification device 145. As a result, the first rendering device 111may re-configure itself according to the user profile of the first user140 identified by the identification device 145, such that the firstrendering device 111 may accept commands from the first user 140, and/orthe first rendering device 111 may select media to render based at leastin part upon the user profile of the first user 140.

The first rendering device 111 renders media and/or responds to commandsof the first user 140 when the presence of the first identificationdevice 145 is detected by the first proximity detector 121, and may stoprendering media when the first identification device 145 is not detectedby the first proximity detector 121. The playback may reflect an audiorendering preference of the first user 140, for example, but not limitedto, choice of media, volume level, balance, and/or an equalization(tone) curve, a number of audio channels (e.g., one channel for mono ortwo channels for stereo), and an audio speaker configuration (e.g.,surround sound speaker configurations with or without a subwoofer,center channel, side and/or rear speakers). Rendering preferences mayalso or instead reflect a video rendering preference of the first user140, for example, but not limited to, a video brightness setting, avideo color ratio/pallet, a video resolution (e.g., standard definitionv. high definition), a video aspect ratio, three dimensional (3D) video,among others. In general, a preference may only be implemented by thefirst rendering device 111 if the first rendering device 111 is capableof executing the preference. For example, a first rendering device 111with a single audio speaker may be incapable of rendering audio instereo.

In particular, user preferences are tailored to the specificallyidentified user 140, as associated with the user identification device145. Alternatively, the first rendering device 111 may configure itselfto operate based upon a default profile if the first proximity detector121 detects the presence of a person, but is not able to identify theperson as a user.

FIG. 1D is a schematic diagram depicting the first embodiment of theproximity detecting rendering system 100 in the context of a network.The proximity detecting rendering system 100 may operate within acommunications network, for example the LAN 160. The LAN may have aninternet connection 165 to access cloud based services, for example, aserver 170 accessing a database 171 in the cloud 180. The server 170 mayaccess preference information associated with the first identificationdevice 145, and convey the preference information to one or more of thefirst rendering device 111, the first proximity detector 121, or theidentification device 145. In alternative embodiments, the server 170and/or the database 171 may be situated locally to the LAN 160.

The system 100 under the first embodiment may be responsive to detectingmore than one user 140. For example, FIG. 2A shows the system 100 wherea first identification device 145 has been detected by the firstproximity detector 121, and the first rendering device 111 has receivedthe identification 148 from the first proximity detector 121, and hasconfigured itself according to the preferences of the first user 140.For example, the first rendering device 111 may be rendering a playlistincluding media identified by the first user 140 in the preferencesobtained according to the identity information provided by the firstidentification device 145.

FIG. 2B shows the system 100 after a second user 240 has been detectedby the first proximity detector 121. For example, the first proximitydetector detects the second identification device 245 on the person ofthe second user 240, and passes the identification 248 of the seconduser 240 to the first rendering device 111. FIG. 2B shows both the firstproximity detector 121 and the first rendering device 111 as recognizingthe second user 240 with a dotted line. The first rendering device 111may then configure itself to be responsive to the preferences of boththe first user 140 and the second user 240. For example, the firstrendering device may be rendering a playlist including media identifiedby the first user 140 in the preferences of the first user 140 and mediaidentified by the second user 240 in the preferences of the second user240. For example, the first rendering device 111 may render a playlistthat only contains media preferred by both the first user 140 and thesecond user 240. Alternatively, the first rendering device 111 mayrender a playlist that is a combination of media preferred by the firstuser 140 and media preferred by the second user 240. The detection ofmultiple users 140, 240 may also change the media content in other ways.For example, a mixture of the preferences of the multiple may becombined using rules to construct a playlist, such as blocking(omitting) or prioritizing content based on the media preferences, forexample, media ratings, of individual users. While FIG. 2B shows thedetection of two users 140, 240 by the system 100, by extension, thesystem 100 may detect three or more users, and configure itself tooperate according to the preferences of one, two, three, or more of thedetected users. The system 100 may be configured to prioritize thepreferences of one user over another. For example, the system may beconfigured according to rules such as having the system owner influence50% of song selections, or to play a song for the most recently detecteduser to welcome her.

FIG. 3A shows a second embodiment of a rendering system 300 within apremises 150, for example, an apartment, with a first region 151, forexample, a living room, and a second region 152, for example, a kitchen.A first rendering device 111 and a first proximity detector 121 arelocated within the first region 151. The first proximity detector 121detects the presence of a first identification device 145 within thefirst region 151, and informs the first rendering device 111 of thepresence of the first identification device 145. FIG. 3A depicts thefirst rendering device 111 with a dash-dot line, indicating the firstrendering device 111 is aware the first identification device 145 hasbeen detected by the first proximity detector 121.

While FIG. 3A shows two regions 151, 152 as rooms of a single premises150 for explanatory purposes, the second embodiment is not limited to asingle premises. For example, the first region 151 may be an indoorlocation, and the second region 152 may be an outdoor location. Asanother example, the first region 151 may be in a building, and thesecond region 152 may be in a vehicle.

The first proximity detector 121 may be incorporated within the firstrendering device 111, or the first proximity detector 121 may beindependent from the first rendering device 111, and in communicationwith the first rendering device via a network, for example, a wirelessLAN 160. The first rendering device 111 may be configured to respond toawareness of the proximity of the first identification device 145 in oneor more ways, as described further below.

For example, the user 140 may be consuming media from the firstrendering device 111 in the first region 151. The first rendering device111 may be playing media from a playlist, or from a streaming mediasource, among other possible media sources. The user 140 moves from thefirst region 151 to the second region 152 where a second renderingdevice 112 is located, as shown by FIG. 3B. The second proximitydetector 122 detects the first identification device 145 within a secondproximity region 127, and alerts the second rendering device 112 thatthe user 140 is nearby. The second rendering device 112 may communicatewith the first rendering device 111 to determine the media beingrendered by the first rendering device 111. The second rendering device112 buffers the media being rendered from the first rendering device 111to facilitate a smooth handoff from the first rendering device 111 tothe second rendering device. The second rendering device 112 starts torender media being rendered by the first rendering device 111 at thesame playback (cue) point as the first rendering device 111. The firstrendering device 111 may optionally stop rendering media user isdetected in the proximity of the first rendering device 111 by the firstproximity detector 121.

The first rendering device 111 and second rendering device 112 mayrender the media simultaneously (i.e., from the same cue point) for someperiod of time while the user 140 is transitioning from the first region151 to the second region 152. Thereafter, the first rendering device 111may cease rendering the media when no first identification device 145 isdetected by the first proximity detector 121. The user 140 experiencescontinuity of listening to the media as he moves between proximitydetection regions 125, 127 of different proximity detectors 121, 122associated with different rendering devices 111, 112. Other actions maybe triggered based on the sensed proximity or absence of proximity of auser 140, such as pausing rendering and/or muting the rendering devices111, 112.

The rendering devices 111, 112 may be configured to behave differentlywhen there is a “party” going on (more than one or two users 140detected) under the first and/or second embodiment. For example, thedetection of two or more users 140, 240 may initiate a party mode.Alternatively, the party mode may be manually configured, or scheduledfor specific times. In the party mode the first rendering device 111 maycontinue rendering when no users are detected by the first proximitydetector 121. For example, in party mode it may be assumed that not allpersons in range of the first rendering device 111 are also carrying anidentification device 145, 245 detectable by the first proximitydetector 121, so it may be desirable the first rendering device 111 maycontinue rendering when no users are detected by the first proximitydetector 121. In contrast, when not in party mode, it may be desirablefor the first rendering device 111 to cease rendering when no users aredetected by the first proximity detector 121.

In party mode, a combined playlist may be generated and/orshared/distributed among two or more rendering devices 111, 112, basedupon the preferences of two or more users, as described further below.The combined playlist may be generated by, for example, one of therendering devices 111, 112, and may automatically be saved to each ofthe user preferences of any users 140, 240 detected by one or moreproximity detectors 121, 122 for later use without specifically savingthe playlist. For example, the combined playlist may be stored in acloud based preference file associated with each identification device145, 245 detected by one or more proximity detectors 121, 122.

FIG. 4A shows two charts depicting a simplified set of media preferencesfor a first user and a second user. A first list 411 shows a list ofmedia preferences for the first user. A second list 412 shows a list ofmedia preferences for the first user. The first list 411 and the secondlist 412 indicate an artist and/or a media genre, and an associated userassigned rating (preference). For example, in the first list 411 thefirst user indicates a strong preference for rock music by rating therock genre with four stars, while indicating an aversion to countrymusic by rating the country genre with one star. Likewise, the firstuser list indicates a strong preference for rock artists The Eagles andThe Beatles by a four star rating, but indicates a moderately weakreference for rock artist The Rolling Stones by a two star rating.

For example, in the second list 412 the second user also indicates astrong preference for rock music by rating the rock genre with fourstars, along with a strong preference for rock artists The Beatles andElton John, and country artist Shania Twain by a four star rating, butindicates a moderately weak reference for rock artist The Eagles with atwo star rating.

FIG. 4B is a chart showing a combined set of preferences for the firstuser and the second user. The first rendering device 111 (FIG. 2B) maycombines the first list 411 and the second list 412 in a combined list420. The preferences of the first list 411 and second list 412 may becombined in a number of manners. For example, any artists and/or genresindicated by a two star rating or less in either the first list 411 orthe second list 412 may be omitted from the combined list 420.Accordingly, the combined list 420 includes the rock genre, and rockartists the Beatles, the Eagles, and Elton John. However, the combinedlist 420 omits the rock artist The Rolling Stones because the secondlist 412 gives The Rolling Stones a two star rating, and omits thecountry genre because the first list 411 gives a one star rating to thecountry genre. Similarly, the artist Shania Twain is omitted from thecombined list 320 since Shania Twain is an artist of the country genre.In this example, the threshold for inclusion in the combined list 320was a rating above two stars. Other thresholds and inclusion/omissionmethods may be used in alternative embodiments.

FIG. 4C shows a playlist 450 generated using the combined set ofpreferences 420 for the first user and the second user. The playlist 450includes media files (for this example, songs) selected according to thecombined preference list 420. For example, the playlist 450 may include(and even favor) songs by artists specifically included in the combinedpreference list 420. The playlist 450 may also include songs by anartist not specifically listed in the combined preference list, The Who,in this example, provided that the artist falls under a genre includedin the combined preference list 420. Artists specifically omitted basedon the preferences of at least one individual user list 411, 412, inthis example, the Rolling Stones, are preferably omitted from theresulting playlist 450.

The preference lists 411, 412, may be generated by a user 140 (FIG. 1A)of an identification device 145, 245 (FIG. 2B), and stored for use byone or more devices within the system 100 (FIG. 1A), for example, thefirst rendering device 111, or stored within a device accessible to oneor more devices within the system 100 (FIG. 1A), for example a local orremote server 170 (FIG. 3A). The preference lists may include mediapreferences including preferred genres, artists, songs, styles, timeperiods (e.g., decade), country or region or origin, moods, themes (suchas holiday themes or event themes (e.g., birthday, wedding)). Thepreference lists may include rendering preferences, as described above.The rendering and/or media preferences may also be location, time ofday, and/or device specific. For example, a user may specify a first setof preferences to be implemented by a first rendering device, forexample, a bedroom stereo system, and a second set of preferences to beimplemented by a second rendering device, for example, a car stereo. Theset of preferences may be associated with a type of rendering device,for example, if the rendering device is a car stereo, a personal musicsystem used with headphones, or a household stereo system used withspeakers. Similarly, the preferences of a detected user may be learnedbased on past behaviors associated with the specific detected user.

FIG. 6 is a flowchart of an exemplary method 600 for configuring a mediarendering system. It should be noted that any process descriptions orblocks in flowcharts should be understood as representing modules,segments, portions of code, or steps that include one or moreinstructions for implementing specific logical functions in the process,and alternative implementations are included within the scope of thepresent invention in which functions may be executed out of order fromthat shown or discussed, including substantially concurrently or inreverse order, depending on the functionality involved, as would beunderstood by those reasonably skilled in the art of the presentinvention. The method is described with reference to elements shown inFIGS. 1A-1C.

Under the first exemplary method 600, a first identification device 145is detected with a first proximity detector 121, as shown by block 610.The first proximity detector 121 receives a first identification 146associated with the first identification device 145, as shown by block620. For example, the first identification 146 may be a string ofcharacters. The first identification 148 (which may be the same as thesecond identification 146, as described above) is communicated to afirst media rendering device 111, as shown by block 630. A firstpreference list 411 (FIG. 4A) including one or more preferencesassociated with the first identification 146 is obtained, as shown byblock 640. For example, the first preference list 411 (FIG. 4A) may berecovered from a stored location within the first media rendering device111, or from a local server 170 (FIG. 3A). The first media renderingdevice 111 is configured at least in part on based upon one or morepreferences from the first preference list 411 (FIG. 4A), as shown byblock 650.

FIG. 7 is a flowchart of an exemplary method 700 for further configuringa media rendering system. The method is described with reference toelements shown in FIGS. 2A-2B, and may be viewed as a continuation ofthe method shown in FIG. 6. A second identification device 245 isdetected with the first proximity detector 121, as shown by block 710. Asecond identification 246 associated with the second identificationdevice 245 is received by the first proximity detector 121, as shown byblock 720. The second identification 246 (which may be the same as theidentification 248) is communicated to the first media rendering device111, as shown by block 730. The first media rendering device 111 obtainsa second preference list 412 (FIG. 4A) including one or more preferencesassociated with the second identification device 245, as shown by block740. The first media rendering device 111 is configured based at leastin part on one or more preferences from the second preference list 412(FIG. 4A), as shown by block 750.

As noted above, the identifications 146, 246 communicated from theidentification device 145, 245 to the first proximity detector 121 maybe the same as, or different from the identifications 148, 248communicated from the first proximity detector 121 to the firstrendering device 111. In a first scenario, the identifications 146, 246communicated from the identification devices 145, 245 to the firstproximity detector 121 may be the same as the identifications 148, 248communicated from the first proximity detector 121 to the firstrendering device 111. Here, the first proximity detector 121 merelyrelays the identifications 146, 246 to the first rendering device 111,which may use the identifications 146, 246 to fetch user profiles fromlocal or remote storage.

In a second scenario, the identifications 146, 246 communicated from theidentification devices 145, 245 to the first proximity detector 121 aredifferent from the identifications 148, 248 communicated from the firstproximity detector 121 to the first rendering device 111. Here, thefirst proximity detector 121 uses the identifications 146, 246 to obtainuser profiles, for example, from local or remote storage, which areforwarded to the first rendering device 111 as identifications 148, 248,which may incorporate the identifications 146, 246.

FIG. 8 is an exemplary method described with reference to elements shownin FIGS. 4A-4C, and may be viewed as a continuation of the method shownin FIG. 7. A combined preference list 420 is generated based upon thefirst preference list 411 and the second preference list 412, as shownby block 810. A playlist 450 is generated from the combined preferencelist 420, as shown by block 820. Common favorable preferences from thefirst preference list 411 and the second preference list 412 may befavored in generating the combined preference list 420, as shown byblock 430. Unfavorable preferences from the first preference list 411 orthe second preference list 412 may be omitted from the combinedpreference list 420, as shown by block 840.

FIG. 9 shows a flowchart 900 continuing the exemplary method of FIG. 6for further configuring a media rendering system 300 containing a secondproximity detector 122 and second media rendering device 112. Thisdescription makes reference to FIGS. 3A-3B. A media source, for example,media referred to in a playlist or streamed by a media stream, isrendered by the first rendering device 111, as shown by block 910. Thefirst identification device 145 is detected with a second proximitydetector 122, as shown by block 920. The second proximity detector 122may be located in a region 152 different from a region 151 containingthe first proximity detector 121. The second proximity detector 122receives a first identification 146 associated with the firstidentification device 145, as shown by block 930. The firstidentification 148 is communicated to a second media rendering device112, as shown by block 940.

The second media rendering device 112 receives the media source from thefirst media rendering device 111, as shown by block 950. It should benoted the second media rendering device 112 may receive the actual mediasource, for example, a media file, or a reference to an external mediasource that the second media source may access, for example, a networkmedia streaming source. A play cue point in the media source isestablished by the first rendering device 111, as shown by block 960.The play cue point is communicated from the first rendering device 111to the second rendering device 112, as shown by block 970. The firstrendering device 111 is in communication with the second renderingdevice 112, for example, via a communication network such as LAN 160(FIG. 3B). The media source is rendered by the second rendering device112 from the play cue point, as shown by block 980. As a result, thesecond rending device 112 begins rendering the same media source fromthe same cue point as the first rendering device 111 when the first user140 enters the second room 152.

As previously mentioned, the one or more devices such as the proximitydetecting device, the rendering device, and/or the identification deviceof the present system for executing the functionality described indetail above may be or include a computer, an example of which is shownin the schematic diagram of FIG. 5. The system 500 contains a processor502, a storage device 504, a memory 506 having software 508 storedtherein that defines the abovementioned functionality, input and output(I/O) devices 510 (or peripherals), and a local bus, or local interface512 allowing for communication within the system 500. The localinterface 512 can be, for example but not limited to, one or more busesor other wired or wireless connections, as is known in the art. Thelocal interface 512 may have additional elements, which are omitted forsimplicity, such as controllers, buffers (caches), drivers, repeaters,and receivers, to enable communications. Further, the local interface512 may include address, control, and/or data connections to enableappropriate communications among the aforementioned components.

The processor 502 is a hardware device for executing software,particularly that stored in the memory 506. The processor 502 can be anycustom made or commercially available single core or multi-coreprocessor, a central processing unit (CPU), an auxiliary processor amongseveral processors associated with the present system 500, asemiconductor based microprocessor (in the form of a microchip or chipset), a macroprocessor, or generally any device for executing softwareinstructions.

The memory 506 can include any one or combination of volatile memoryelements (e.g., random access memory (RAM, such as DRAM, SRAM, SDRAM,etc.)) and nonvolatile memory elements (e.g., ROM, hard drive, tape,CDROM, etc.). Moreover, the memory 506 may incorporate electronic,magnetic, optical, and/or other types of storage media. Note that thememory 506 can have a distributed architecture, where various componentsare situated remotely from one another, but can be accessed by theprocessor 502.

The software 508 defines functionality performed by the system 500, inaccordance with the present invention. The software 508 in the memory506 may include one or more separate programs, each of which contains anordered listing of executable instructions for implementing logicalfunctions of the system 500, as described below. The memory 506 maycontain an operating system (O/S) 520. The operating system essentiallycontrols the execution of programs within the system 500 and providesscheduling, input-output control, file and data management, memorymanagement, and communication control and related services.

The I/O devices 510 may include input devices, for example but notlimited to, a motion detector, a camera, a radio frequency (RF)detector, a keyboard, mouse, a pattern scanner, touchpad, microphone,etc. Furthermore, the I/O devices 510 may also include output devices,for example but not limited to, a printer, video display, audiotransducer, etc. Finally, the I/O devices 510 may further includedevices that communicate via both inputs and outputs, for instance butnot limited to, a wireless transducer, a modulator/demodulator (modem;for accessing another device, system, or network), a radio frequency(RF) or other transceiver, a telephonic interface, a bridge, a router,or other device.

When the system 500 is in operation, the processor 502 is configured toexecute the software 508 stored within the memory 506, to communicatedata to and from the memory 506, and to generally control operations ofthe system 500 pursuant to the software 508, as explained above.

When the functionality of the system 500 is in operation, the processor502 is configured to execute the software 508 stored within the memory506, to communicate data to and from the memory 506, and to generallycontrol operations of the system 500 pursuant to the software 508. Theoperating system 520 is read by the processor 502, perhaps bufferedwithin the processor 502, and then executed.

When the system 500 is implemented in software 508, it should be notedthat instructions for implementing the system 500 can be stored on anycomputer-readable medium for use by or in connection with anycomputer-related device, system, or method. Such a computer-readablemedium may, in some embodiments, correspond to either or both the memory506 or the storage device 504. In the context of this document, acomputer-readable medium is an electronic, magnetic, optical, or otherphysical device or means that can contain or store a computer programfor use by or in connection with a computer-related device, system, ormethod. Instructions for implementing the system can be embodied in anycomputer-readable medium for use by or in connection with the processoror other such instruction execution system, apparatus, or device.Although the processor 502 has been mentioned by way of example, suchinstruction execution system, apparatus, or device may, in someembodiments, be any computer-based system, processor-containing system,or other system that can fetch the instructions from the instructionexecution system, apparatus, or device and execute the instructions. Inthe context of this document, a “computer-readable medium” can be anymeans that can store, communicate, propagate, or transport the programfor use by or in connection with the processor or other such instructionexecution system, apparatus, or device.

Such a computer-readable medium can be, for example but not limited to,an electronic, magnetic, optical, electromagnetic, infrared, orsemiconductor system, apparatus, device, or propagation medium. Morespecific examples (a nonexhaustive list) of the computer-readable mediumwould include the following: an electrical connection (electronic)having one or more wires, a portable computer diskette (magnetic), arandom access memory (RAM) (electronic), a read-only memory (ROM)(electronic), an erasable programmable read-only memory (EPROM, EEPROM,or Flash memory) (electronic), an optical fiber (optical), and aportable compact disc read-only memory (CDROM) (optical). Note that thecomputer-readable medium could even be paper or another suitable mediumupon which the program is printed, as the program can be electronicallycaptured, via for instance optical scanning of the paper or othermedium, then compiled, interpreted or otherwise processed in a suitablemanner if necessary, and then stored in a computer memory.

In an alternative embodiment, where the system 500 is implemented inhardware, the system 500 can be implemented with any or a combination ofthe following technologies, which are each well known in the art: adiscreet logic circuit(s) having logic gates for implementing logicfunctions upon data signals, an application specific integrated circuit(ASIC) having appropriate combinational logic gates, a programmable gatearray(s) (PGA), a field programmable gate array (FPGA), etc.

It will be apparent to those skilled in the art that variousmodifications and variations can be made to the structure of the presentinvention without departing from the scope or spirit of the invention.In view of the foregoing, it is intended that the present inventioncover modifications and variations of this invention provided they fallwithin the scope of the following claims and their equivalents.

What is claimed is:
 1. A method for generating a media playlist by amedia rendering device comprising a proximity detector, comprising thesteps of: detecting, with the proximity detector, a first identificationdevice; receiving by the proximity detector, a first identificationassociated with the first identification device; selecting a firstpreference list associated with the first identification; detecting,with a proximity detector, a second identification device; receiving bythe proximity detector, a second identification associated with thesecond identification device; selecting a second preference listassociated with the second identification; generating a combinedpreference list based upon the first preference list and the secondpreference list; and generating a playlist comprising a plurality ofsongs based on the combined preference list.
 2. The method of claim 1,wherein generating the playlist further comprises selecting a first songfor the playlist based upon the first preferences list and selecting asecond song for the playlist based upon the second preferences list. 3.The method of claim 1, wherein generating the playlist further comprisesselecting a song based upon the first preferences list and/or the secondpreferences list.
 4. The method of claim 1, further comprising the stepsof omitting from the playlist a song of the plurality of songs basedupon an unfavorable preference from the first preference list and/or thesecond preference list.
 5. A media rendering system, comprising: a firstuser identification device configured to provide a first user identityidentifying the first user identification device; a second useridentification device configured to provide a second user identityidentifying the second user identification device; a proximity detectingdevice co figured to detect and receive the first user identity from thefirst user identification device when the first user identificationdevice is located within a proximity detecting region of the proximitydetecting device and to detect and receive the second user identity fromthe second user identification device when the second useridentification device is located within a proximity detecting region ofthe proximity detecting device; and a media rendering device configuredto render a media source, wherein the media rendering device is incommunication with the proximity detecting device and configured toreceive the first user identity and the second user identity from theproximity detecting device and access a first user preference associatedwith the first user identity and a second user preference associatedwith the second user identity, and wherein the media rendering device isconfigured to operate according to a first operating manner derived fromthe first user preference, the media rendering device is configured tooperate according to a second operating manner derived from the seconduser preference, and the media rendering device is configured to operateaccording to a third operating manner derived from the first userpreference and the second user preference.
 6. A media rendering system,comprising: a proximity detecting device configured to detect andreceive a first user identity from a first and a second user identityfrom a second user; and a media rendering device in communication withthe proximity detecting device configured to render a media source,wherein the proximity detecting device is configured to detect the firstand second user identity via facial recognition and/or voice-printanalysis, and the media rendering device is configured to receive thefirst user identity and the second user identity from the proximitydetecting device and to render media according to an operating mannerdetermined at least in part by the first user identity and/or seconduser identity, and wherein the media rendering device is configured toaccess a first user preference associated with the first user identityand a second user preference associated with the second user identity,and wherein the media rendering device is configured to operateaccording to a first operating manner derived from a first userpreference associated with the first user identity, wherein the firstmedia rendering device is configured to operate according to a secondoperating manner derived from a second user preference associated withthe second user identity; and wherein the first media rendering deviceis configured to operate according to a third operating manner derivedfrom the first user preference and the second user preference.
 7. Thesystem of claim 6, wherein the first, second and/or third operatingmanner consists of one of the group consisting of: selecting a mediafile to add to a playlist for rendering by the media rendering device;selecting a streaming media source for rendering by the media renderingdevice; and adjusting a rendering parameter, wherein the renderingparameter is selected from a group consisting of an audio volume level,an audio equalization curve, a video brightness setting, a video colorratio, a number of audio channels, an audio speaker configuration, avideo resolution, a video aspect ratio, a delay setting, a channel downmix, a channel expansion, a dynamic range ratio, and two or threedimensional video presentation.
 8. The system of claim 6, wherein thefirst, and/or second user preference is specific to one of a groupconsisting of a location of the media rendering device, a time of day, atype of media rendering device, and a previous behavior associated withthe first and/or second user.
 9. The system of claim 6, wherein thethird operating manner comprises selecting a media source to add to aplaylist for rendering by the media rendering device.
 10. The system ofclaim 9, wherein: the first user preference comprises a first mediapreference; the second user preference comprises a second mediapreference; and selecting the media source further comprises combiningthe first preference with the second preference.
 11. The system of claim9, wherein the third operating manner consists selecting a media file toomit from the playlist for rendering by the media rendering device. 12.The system of claim 6, wherein the first user identification device andthe proximity detecting device are in communication via a communicationnetwork.
 13. The system of claim 12, wherein at least one of the groupconsisting of the first user identification device, the proximitydetecting device, and the media rendering device is configured to storethe one or more user preference.
 14. The system of claim 13, wherein themedia rendering device is configured to access the one or more userpreference via a server in communication with the communication network.15. The system of claim 12, wherein the media rendering device is incommunication with a media source via the communication network.
 16. Amethod for configuring a media rendering system, comprising the stepsof: detecting, with a proximity detector, a first user identity viafacial recognition and/or voice-print analysis; receiving by theproximity detector, a first identification associated with the firstuser identity; communicating the first identification to a first mediarendering device; obtaining, by the first media rendering device, afirst preference list comprising one or more preferences associated withthe first identification; configuring the media rendering device basedat least in part on one or more preferences of the first preferencelist; detecting, with the proximity detector, a second user identity viafacial recognition and/or voice-print analysis; receiving by theproximity detector, a second identification associated with the seconduser identity; communicating the second identification to the firstmedia rendering device; obtaining, by the first media rendering device,a second preference list comprising one or more preferences associatedwith the second identification; configuring the first media renderingdevice based at least in part on one or more preferences of the secondpreference list.
 17. The method of claim 16, wherein configuring themedia rendering device further comprises selecting a media source forrendering.
 18. The method of claim 17, further comprising a step ofrendering the media source by the first rendering device.
 19. The methodof claim 16, further comprising the steps of: generating a combinedpreference list based upon the first preference list and the secondpreference list; and generating a playlist from the combined preferencelist.
 20. The method of claim 19, further comprising the steps of:favoring common favorable preferences from the first preference list andthe second preference list in the combined preference list; and omittingunfavorable preferences from the first preference list or the secondpreference list from the combined preference list.